Enterprises are increasingly being asked to provide access to applications to employees, partners and service provides located outside the perimeter of the enterprise network. One approach for improving the performance and security of remotely-accessed applications is to install an appliance within the enterprise network that performs certain functions to accelerate application performance and provide secure access. In some networks different appliances may be used to provide access to different resources. In some networks, a plurality of appliances may be used to provide access to a single resource. In all these networks, load balancing, increased performance, reduced latency, and efficient switching upon failure may be desired properties. It is thus desirable that a client accessing the resources have means for selecting the appliance to use for access in order to achieve load balancing, increased performance, reduced latency, and/or efficient switching upon failure.